// Copyright 2021-2025 Buf Technologies, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// @generated by protoc-gen-es v2.10.1 with parameter "target=js+dts,import_extension=js"
// @generated from file google/protobuf/unittest_features.proto (package pb, edition 2024)
/* eslint-disable */

import { enumDesc, extDesc, fileDesc, messageDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt";

/**
 * Describes the file google/protobuf/unittest_features.proto.
 */
export const file_google_protobuf_unittest_features = /*@__PURE__*/
  fileDesc("Cidnb29nbGUvcHJvdG9idWYvdW5pdHRlc3RfZmVhdHVyZXMucHJvdG8SAnBiIsgBCgtUZXN0TWVzc2FnZRpfCgZOZXN0ZWQyVQoLdGVzdF9uZXN0ZWQSGy5nb29nbGUucHJvdG9idWYuRmVhdHVyZVNldBiNTiABKAsyFi5wYi5UZXN0TmVzdGVkRmVhdHVyZXNSCnRlc3ROZXN0ZWQyWAoMdGVzdF9tZXNzYWdlEhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQYjk4gASgLMhcucGIuVGVzdE1lc3NhZ2VGZWF0dXJlc1ILdGVzdE1lc3NhZ2UikgEKE1Rlc3RNZXNzYWdlRmVhdHVyZXMSewoMZmlsZV9mZWF0dXJlGAEgASgOMg8ucGIuRW51bUZlYXR1cmVCVIgBAZgBAaIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY5weiAQsSBlZBTFVFMxjoB6IBDBIGVkFMVUU0GJ2NBqIBDBIGVkFMVUU1GJ6NBrIBAwjoByKRAQoSVGVzdE5lc3RlZEZlYXR1cmVzEnsKDGZpbGVfZmVhdHVyZRgBIAEoDjIPLnBiLkVudW1GZWF0dXJlQlSIAQGYAQGiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOcHogELEgZWQUxVRTMY6AeiAQwSBlZBTFVFNBidjQaiAQwSBlZBTFVFNRiejQayAQMI6AcirAwKDFRlc3RGZWF0dXJlcxJ7CgxmaWxlX2ZlYXR1cmUYASABKA4yDy5wYi5FbnVtRmVhdHVyZUJUiAEBmAEBogELEgZWQUxVRTEYhAeiAQsSBlZBTFVFMhjnB6IBCxIGVkFMVUUzGOgHogEMEgZWQUxVRTQYnY0GogEMEgZWQUxVRTUYno0GsgEDCOgHEkwKF2V4dGVuc2lvbl9yYW5nZV9mZWF0dXJlGAIgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHEkQKD21lc3NhZ2VfZmVhdHVyZRgDIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQOiAQsSBlZBTFVFMRiEB7IBAwjoBxJCCg1maWVsZF9mZWF0dXJlGAQgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBKIBCxIGVkFMVUUxGIQHsgEDCOgHEkIKDW9uZW9mX2ZlYXR1cmUYBSABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEFogELEgZWQUxVRTEYhAeyAQMI6AcSQQoMZW51bV9mZWF0dXJlGAYgASgOMg8ucGIuRW51bUZlYXR1cmVCGogBAZgBBqIBCxIGVkFMVUUxGIQHsgEDCOgHEkcKEmVudW1fZW50cnlfZmVhdHVyZRgHIAEoDjIPLnBiLkVudW1GZWF0dXJlQhqIAQGYAQeiAQsSBlZBTFVFMRiEB7IBAwjoBxJECg9zZXJ2aWNlX2ZlYXR1cmUYCCABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEIogELEgZWQUxVRTEYhAeyAQMI6AcSQwoObWV0aG9kX2ZlYXR1cmUYCSABKA4yDy5wYi5FbnVtRmVhdHVyZUIaiAEBmAEJogELEgZWQUxVRTEYhAeyAQMI6AcSXQoQbXVsdGlwbGVfZmVhdHVyZRgKIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQGYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoBxJCChJib29sX2ZpZWxkX2ZlYXR1cmUYCyABKAhCJogBAZgBBKIBChIFZmFsc2UYhAeiAQoSBHRydWUYnY0GsgEDCOgHElsKDnNvdXJjZV9mZWF0dXJlGA8gASgOMg8ucGIuRW51bUZlYXR1cmVCMogBApgBAZgBBJgBA5gBBpgBB5gBCJgBCZgBBZgBAqIBCxIGVkFMVUUxGIQHsgEDCOgHElwKD3NvdXJjZV9mZWF0dXJlMhgQIAEoDjIPLnBiLkVudW1GZWF0dXJlQjKIAQKYAQGYAQSYAQOYAQaYAQeYAQiYAQmYAQWYAQKiAQsSBlZBTFVFMRiEB7IBAwjoBxKNAQoPcmVtb3ZlZF9mZWF0dXJlGBEgASgOMg8ucGIuRW51bUZlYXR1cmVCY4gBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6AeiAQsSBlZBTFVFMxjpB7IBLQjoBxDoBxoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZyDpBxJUCg5mdXR1cmVfZmVhdHVyZRgSIAEoDjIPLnBiLkVudW1GZWF0dXJlQiuIAQGYAQGYAQSiAQsSBlZBTFVFMRiEB6IBCxIGVkFMVUUyGOkHsgEDCOkHElcKDmxlZ2FjeV9mZWF0dXJlGBMgASgOMg8ucGIuRW51bUZlYXR1cmVCLogBAZgBAZgBBKIBCxIGVkFMVUUxGIQHogELEgZWQUxVRTIY6AeyAQYI5wcg6AcSzgEKFnZhbHVlX2xpZmV0aW1lX2ZlYXR1cmUYFCABKA4yGC5wYi5WYWx1ZUxpZmV0aW1lRmVhdHVyZUKTAYgBAZgBAaIBHRIYVkFMVUVfTElGRVRJTUVfSU5IRVJJVEVEGIQHogEaEhVWQUxVRV9MSUZFVElNRV9GVVRVUkUY6AeiARsSFVZBTFVFX0xJRkVUSU1FX0ZVVFVSRRifjQayAS8I6AcQno0GGiJDdXN0b20gZmVhdHVyZSBkZXByZWNhdGlvbiB3YXJuaW5nIJ+NBirmAQoLRW51bUZlYXR1cmUSHQoZVEVTVF9FTlVNX0ZFQVRVUkVfVU5LTk9XThAAEgoKBlZBTFVFMRABEgoKBlZBTFVFMhACEgoKBlZBTFVFMxADEgoKBlZBTFVFNBAEEgoKBlZBTFVFNRAFEgoKBlZBTFVFNhAGEgoKBlZBTFVFNxAHEgoKBlZBTFVFOBAIEgoKBlZBTFVFORAJEgsKB1ZBTFVFMTAQChILCgdWQUxVRTExEAsSCwoHVkFMVUUxMhAMEgsKB1ZBTFVFMTMQDRILCgdWQUxVRTE0EA4SCwoHVkFMVUUxNRAPKuACChRWYWx1ZUxpZmV0aW1lRmVhdHVyZRIfChtURVNUX1ZBTFVFX0xJRkVUSU1FX1VOS05PV04QABIcChhWQUxVRV9MSUZFVElNRV9JTkhFUklURUQQARJOChZWQUxVRV9MSUZFVElNRV9TVVBQT1JUEAIaMiIwCJ2NBhCejQYaIkN1c3RvbSBmZWF0dXJlIGRlcHJlY2F0aW9uIHdhcm5pbmcgn40GEiQKHFZBTFVFX0xJRkVUSU1FX0VNUFRZX1NVUFBPUlQQAxoCIgASIQoVVkFMVUVfTElGRVRJTUVfRlVUVVJFEAQaBiIECJ2NBhJJChlWQUxVRV9MSUZFVElNRV9ERVBSRUNBVEVEEAUaKiIoEJ2NBhoiQ3VzdG9tIGZlYXR1cmUgZGVwcmVjYXRpb24gd2FybmluZxIlChZWQUxVRV9MSUZFVElNRV9SRU1PVkVEEAYaCSIHEOgHIJ2NBjpCCgR0ZXN0EhsuZ29vZ2xlLnByb3RvYnVmLkZlYXR1cmVTZXQYj04gASgLMhAucGIuVGVzdEZlYXR1cmVzUgR0ZXN0QhJCEFVuaXR0ZXN0RmVhdHVyZXNiCGVkaXRpb25zcOkH", [file_google_protobuf_descriptor]);

/**
 * Describes the message pb.TestMessage.
 * Use `create(TestMessageSchema)` to create a new message.
 */
export const TestMessageSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_features, 0);

/**
 * Describes the message pb.TestMessage.Nested.
 * Use `create(TestMessage_NestedSchema)` to create a new message.
 */
export const TestMessage_NestedSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_features, 0, 0);

/**
 * @generated from extension: pb.TestNestedFeatures test_nested = 9997;
 */
export const TestMessage_Nested_test_nested = /*@__PURE__*/
  extDesc(file_google_protobuf_unittest_features, 0, 0, 0);

/**
 * @generated from extension: pb.TestMessageFeatures test_message = 9998;
 */
export const TestMessage_test_message = /*@__PURE__*/
  extDesc(file_google_protobuf_unittest_features, 0, 0);

/**
 * Describes the message pb.TestMessageFeatures.
 * Use `create(TestMessageFeaturesSchema)` to create a new message.
 */
export const TestMessageFeaturesSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_features, 1);

/**
 * Describes the message pb.TestNestedFeatures.
 * Use `create(TestNestedFeaturesSchema)` to create a new message.
 */
export const TestNestedFeaturesSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_features, 2);

/**
 * Describes the message pb.TestFeatures.
 * Use `create(TestFeaturesSchema)` to create a new message.
 */
export const TestFeaturesSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_features, 3);

/**
 * Describes the enum pb.EnumFeature.
 */
export const EnumFeatureSchema = /*@__PURE__*/
  enumDesc(file_google_protobuf_unittest_features, 0);

/**
 * @generated from enum pb.EnumFeature
 */
export const EnumFeature = /*@__PURE__*/
  tsEnum(EnumFeatureSchema);

/**
 * Describes the enum pb.ValueLifetimeFeature.
 */
export const ValueLifetimeFeatureSchema = /*@__PURE__*/
  enumDesc(file_google_protobuf_unittest_features, 1);

/**
 * @generated from enum pb.ValueLifetimeFeature
 */
export const ValueLifetimeFeature = /*@__PURE__*/
  tsEnum(ValueLifetimeFeatureSchema);

/**
 * @generated from extension: pb.TestFeatures test = 9999;
 */
export const test = /*@__PURE__*/
  extDesc(file_google_protobuf_unittest_features, 0);

